<?php

/**
 * 单图片上传
 *
 * @param   file     file      上传图片
 * @param   to_url   string    类型
 * @return string
 */
function upload($file, $to_url)
{
    if ($file->isValid()) {
        // 获取文件相关信息
        $file->getClientOriginalName(); // 文件原名
        $ext = $file->getClientOriginalExtension();     // 扩展名
        $realPath = $file->getRealPath();   //临时文件的绝对路径
        $file->getClientMimeType();     // image/jpeg

        //上传文件
        $filename = date('YmdHis') . '-' . uniqid() . '.' . $ext;
        //使用我们新建的 authentication本地存储空间（目录）
        $bool = Storage::disk($to_url)->put($filename, file_get_contents($realPath));
        if (!$bool) {
            return false;
        }
        return env('APP_URL').'/storage/'.$to_url.'/'.$filename;
    }
}

/**
 * 多图片上传
 *
 * @param   file     file      上传图片
 * @param   to_url   string    类型
 * @return array|string
 */
function uploads($file, $to_url)
{
    $url = '';
    foreach ($file as $k => $v) {
        if ($v->isValid()) {
            // 获取文件相关信息
            $v->getClientOriginalName(); // 文件原名
            $ext = $v->getClientOriginalExtension();     // 扩展名
            $realPath = $v->getRealPath();   //临时文件的绝对路径
            $v->getClientMimeType();     // image/jpeg

            //上传文件
            $filename = date('Y-m-d-H-i-s') . '-' . uniqid() . '.' . $ext;
            //使用我们新建的 authentication本地存储空间（目录）
            $bool = Storage::disk($to_url)->put($filename, file_get_contents($realPath));
            if(!$bool) {
                return false;
            }
            $url .= env('APP_URL').'/storage/'.$to_url.'/'.$filename.',';
        }
    }
    return rtrim($url, ',');
}


/**
 * 生成随机字符串
 *
 * @param Int $length 字符串长度
 * @return String
 */
function randStr($length = 4)
{
    $strs = "1234567890";
    $name = substr(str_shuffle($strs), mt_rand(0,strlen($strs)), $length);

    return  $name;
}

/*
 * 生成订单编号
 */
function orderNo($length = 6)
{
    $strs = '1234567890';

    return date('YmdHis', time()).substr(str_shuffle($strs), mt_rand(0,strlen($strs)-5), $length);
}

/**
 * 生成随机数
 */
function randFloat($length = 6){
    return rand(pow(10,($length-1)), pow(10,$length)-1);
}



